package com.springcloud.play.novel.service;

import com.springcloud.play.novel.model.Novel;
import com.springcloud.play.novel.model.NovelChapter;
import java.util.List;

public interface NovelService {
    /**
     * 爬取并保存小说信息
     */
    void crawlNovel(String novelUrl);
    
    /**
     * 爬取并保存小说章节
     */
    void crawlNovelChapters(Long novelId, String chaptersListUrl);
    
    /**
     * 获取小说详情
     */
    Novel getNovelById(Long novelId);
    
    /**
     * 获取小说章节列表
     */
    List<NovelChapter> getNovelChapters(Long novelId);
    
    /**
     * 获取小说章节内容
     */
    NovelChapter getNovelChapter(Long chapterId);
    
    /**
     * 定时爬取更新小说
     */
    void scheduledCrawl();
    
    /**
     * 搜索小说
     */
    List<Novel> searchNovels(String keyword);
}